<!-- 
  书籍: css世界, 第三章, 3.2 width/height作用的具体细节
    宽度的表现:
      1. 充分利用可用空间; 默认width: auto
        1.1 block会充满整个宽度
        1.2 position为absulte或者fixed时, 并设置了left0, right0时
      2. 收缩与包裹; 元素宽度由内容来决定, inline-block,浮动元素,绝对定位的元素都具有包裹性
      3. 收缩到最小; table容器中, 一柱擎天
      4. 超出容器限制; 
        4.1 内联元素设置为 white-space:nowrap;
        4.2 内容很长的英文和数字

  需求: 在文字短的时候, 居中显示; 在文字长的的时候, 居左显示
  思路: 
    1. 将内容容器的text-align设置为居中显示
    2. 将内容的display设置为inline-block, text-align设置为居左显示;
-->

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }

    .app {
      width: 400px;
      height: 300px;
      border: 1px solid #ccc;
      padding-top: 30px;
      text-align: center;
    }
    
    .container {
      width: 200px;
      min-height: 100px;
      background: #f00;
      margin: 0 auto;
      /* 文字内容短时, 这句话起作用 */
      text-align: center;
    }
    .content {
      display: inline-block;
      text-align: left;
    }
  </style>
</head>
<body>
  <div class="app">
    <div class="container">
      <span id="contentId" class="content">填充内容</span>
    </div>
    <button onclick="onClick()">增加内容</button>
    <button onclick="onClear()">初始化</button>
  </div>

  <script>
    const contentId = document.getElementById('contentId')
    const jsBtn = document.getElementById('jsBtn')
    function onClick(e) {
      contentId.innerText += '填充内容'
    }
    function onClear(e) {
      contentId.innerText = '填充内容'
    }
  </script>
</body>
</html>